
package Controlador;

import Modelo.Listas;
import Reportes.ReporteMultados;
import Vista.Mensajes;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.DateFormat;

public class ControladorReporteMultados implements ActionListener
{
    private ReporteMultados multados;
    private Listas list;

    public ControladorReporteMultados(Listas lis) {
        list = lis;
        multados = new ReporteMultados();
        multados.agregarListener(this);
        multados.setVisible(true);
        cargarCombo();
    }
    
    private void cargarCombo()
    {
        for (int i = 0; i < list.getListaCoop().size(); i++) {
            multados.getCmbCodigo().addItem(list.getListaCoop().get(i).getRifC());
        }
    }
    
    private void llenarDatos()
    {
        String rif,coop,multa,viaje,placa,tipo,chofer,socio,fecha;
        rif = multados.getCmbCodigo().getSelectedItem().toString();
        //----for  que llena el texto----
        for (int i = 0; i < list.getListaCoop().size(); i++) 
        {
            if(list.getListaCoop().get(i).getRifC().equals(rif))
            {
                coop = list.getListaCoop().get(i).getNombreC();
                multados.getTxtCoop().setText(coop);
            }
        }//----cierre del for que llena el texto----
        //----for que llena la tabla----
        for (int j = 0; j < list.getListaMultas().size(); j++) 
        {
            if(list.getListaMultas().get(j).getCodCoop().equals(rif))
            {
                multa = list.getListaMultas().get(j).getCodMulta();
                viaje = list.getListaMultas().get(j).getCodViaje();
                placa = list.getListaMultas().get(j).getPlacaV();
                chofer = list.getListaMultas().get(j).getCedChofer();
                socio = list.getListaMultas().get(j).getCedSocio();
                DateFormat df = DateFormat.getDateInstance();
                fecha = df.format(list.getListaMultas().get(j).getDiaFeriado());
                //----para el tipo de unidad----
                for (int k = 0; k < list.getListaUnidadT().size(); k++) 
                {
                    if(list.getListaUnidadT().get(k).getPlaca().equals(placa))
                    {
                        tipo = list.getListaUnidadT().get(k).getDescripcion();
                        multados.getjTableMultados().setValueAt(tipo, j, 3);
                    }                
                }//----cierre del for para el tipo de la unidad----
                //--------------------------------------------------
                multados.getjTableMultados().setValueAt(multa, j, 0);
                multados.getjTableMultados().setValueAt(viaje, j, 1);
                multados.getjTableMultados().setValueAt(placa, j, 2);
                multados.getjTableMultados().setValueAt(chofer, j, 4);
                multados.getjTableMultados().setValueAt(socio, j, 5);
                multados.getjTableMultados().setValueAt(fecha, j, 6);
            }
        }//----Cierre del for que llena la tabla----
    }

    @Override
    public void actionPerformed(ActionEvent e) {
        if (e.getSource().equals(multados.getCmbCodigo()))
        {
            String cadena;
            cadena = multados.getCmbCodigo().getSelectedItem().toString();
                    if(cadena.equals("Seleccione"))
                    {
                        Limpiar();
                    }
                    llenarDatos();
        }
    }

    private void Limpiar() {
        multados.getTxtCoop().setText("");
    }
    
    
}
